Storage of Tags in Video for Carriage in Real-Time

ABSTRACT

There is provided a system and method for storing tags in video for carriage in real-time. The system comprising a content creator and a television network, the content creating configured to retrieve a video from a memory for delivery to the television network, generate an ID3 tag for the video, the ID3 tag including information about the video, insert the ID3 tag into a vertical ancillary data (VANC) space of the video, and transmit the video including the ID3 tag to the television network. The television network configured to receive the video including the ID3 tag from the content creator and transmit the video including the ID3 tag to a display device.

BACKGROUND

Metadata containers are often used to provide information about thefiles they represent, such as audio or video files. For example, ID3Tags allow information such as the title, artist, album, track number,and other information about the file to be stored within the fileitself. However, problems can occur with the ID3 Tags when the files arestreamed in baseband for, for example, not as a compressed stream. Forinstance, when files are streamed in baseband form, the ID3 Tags arelost.

Methods have been developed to try and preserve the ID3 Tags in filesthat are streamed in baseband form. For example, one method tries topreserve the ID3 tags using watermarking. However, ID3 Tags are notviable for watermarking, since ID3 Tags are often long, such as 128bytes or 227 bytes.

SUMMARY

The present disclosure is directed to a system and method for thestoring of tags in video for carriage in real-time, substantially asshown in and/or described in connection with at least one of thefigures, as set forth more completely in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 presents a system used for the storing of tags in video forcarriage in real-time, according to one implementation of the presentdisclosure.

FIG. 2 presents an example of a content creator storing tags in videofor carriage in real-time, according to one implementation of thepresent disclosure.

FIG. 3 presents an example of a television network utilizing video thatincludes stored tags, according to one implementation of the presentdisclosure.

FIG. 4 presents flowchart illustrating a method for a content creator tostore tags in video for carriage in real-time, according to oneimplementation of the present disclosure.

FIG. 5 shows a flowchart illustrating a method for a television networkto utilize video that includes stored tags, according to oneimplementation of the present disclosure.

DETAILED DESCRIPTION

The following description contains specific information pertaining toimplementations in the present disclosure. The drawings in the presentapplication and their accompanying detailed description are directed tomerely exemplary implementations. Unless noted otherwise, like orcorresponding elements among the figures may be indicated by like orcorresponding reference numerals. Moreover, the drawings andillustrations in the present application are generally not to scale, andare not intended to correspond to actual relative dimensions.

FIG. 1 presents a system used for the storing of tags in video forcarriage in real-time, according to one implementation of the presentdisclosure. System 100 of FIG. 1 includes content creator 110,television network 130, television 150, electronic device 155, andmobile device 160. Content creator 110 includes tag authoring 111, taginsertion 112, video file 113, and real-time video 114. Video file 113includes tag 115 a and real-time video 114 includes tag 115 b.Television network 130 includes tag insertion 131, television (TV)processing 132, TV stations playout 133, content recorder 134, video ondemand (VOD) creation 135, mobile content authoring 136, and metadataauthoring 137. System 100 further includes transmission link 170,transmission link 171, and transmission link 172.

As illustrated in FIG. 1, content creator 110 authors and inserts tagsinto video content before transmitting the video content to televisionnetwork 130. Content creator 110 may include any entity that creates thevideo content that is transmitted to television network 130. Forexample, content creator 110 may include, but is not limited to, a PostProduction House or Television Studio that created both video file 113and/or real-time video 114. Video file 113 may include any type of videodata that is encoded and compressed into a video format for transmissionto television network 130. Real-time video 114 may include any type ofvideo or live feed that is transmitted to and ready to be played out bytelevision network 130.

As illustrated in of FIG. 1, content creator 110 creates and inserts thetags into the video content using tag authoring 111 and tag insertion112. Tag authoring 111 may be used by content creator 110 to generatetags for insertion into video content, such as tag 115 a inserted intovideo file 113 and tag 115 b inserted into real-time video 114. Tags 115a and 115 b may include ID3 tags that provide information about thevideo content. For example, tag 115 a may include a metadata containerthat provides information about video file 113, such as, but not limitedto, the title of video file 113, how video file 113 was created, and thelength of video file 113. For another example, tag 115 b may include ametadata container that provides information about real-time video 114,such as, but not limited to, the title of real-time video 114 and howreal-time video 114 was created. ID3 tags provide the Title, Artist,Year, Genre and other information about the media file they represent,whether an audio file or a video file. An ID3 tag is a data containerwithin a media file stored in a prescribed format. This data commonlycontains, among other things, the Artist names, Title, Year and Genre ofthe media file.

After creating ID3 tags using tag authoring 111, content creator 110then uses tag insertion 112 to insert the created tags into the videocontent itself. For example, and as illustrated in FIG. 1, tag insertion112 may insert tag 115 a into video file 113. In such an example, taginsertion 112 may insert tag 115 a into video file 113 using a number ofdifferent method such as, but not limited to, in the header of videofile 113, at the end of video file 113, or as a sidecar file to videofile 113. For another example, and as also illustrated in FIG. 1, taginsertion 112 may insert tag 115 b into real-time video 114. In such anexample, tag insertion 112 may insert tag 115 b into the verticalancillary data (VANC) space of real-time video 114.

Ancillary data (commonly abbreviated as ANC data), in the context oftelevision systems, refers to a means which by non-video information(such as audio, other forms of essence, and metadata) may be embeddedwithin the serial digital interface. Ancillary data is standardized bySMPTE as SMPTE 291M: Ancillary Data Packet and Space Formatting, whichis incorporated herein by reference. Ancillary data can be located innon-picture portions of horizontal scan lines. This is known ashorizontal ancillary data (HANC). Ancillary data can also be located innon-picture regions of the frame. This is known as vertical ancillarydata (VANC). Data is stored in the VANC by referencing Data ID's (DIDs)and Secondary Data ID's (SDIDs). SMPTE 291M allows an availability ofDID/SDID combinations for user defined functions. SMPTE 291M is used forinsertion of data into HDTV signals. There are also SMPTE standards forSDTV as well as UHDTV formats that may be used in variousimplementations disclosed herein.

Continuing with FIG. 1, by having content creator 110 create and insertthe tags into the video content before transmitting the video content totelevision network 130, the tags are preserved in the video content. Assuch, the tags are not lost when the video content is streamed inbaseband form. For example, tag 115 b will not be lost when real-timevideo 114 is streamed in baseband form. Furthermore, television network130 does not have to generate and insert tags into the video content asthe video content includes the tags when received from content creator110.

After receiving the video content from content creator 110, such asvideo file 113 and real-time video 114, television network 130 thenprocesses the video content so that the video content can be transmittedto and played out as video by television 150, electronic device 155, andmobile device 160. In order to process the video content, televisionnetwork 130 first uses tag insertion 131 to insert tags into any videothat does not already include tags. For example, if television network130 is processing video file 113 using tag insertion 131, televisionnetwork 130 would take tag 115 a from video file 113 and insert tag 115a into the video for playout. In such an example, television network 130may insert tag 115 a into the VANC space of the video. For anotherexample, if television network 130 is processing real-time video 114using tag insertion 131, television network 130 would not have to doanything to real-time video 114 since real-time video 114 includes avideo or live feed with tag 115 b already inserted in the VANC space.

Also illustrated in FIG. 1, television network 130 includes TVprocessing 132. Television network 130 uses TV processing 132 to furtherprocess video for playout to television 150, electronic device 155, andmobile device 160. For example, television network 130 may processreal-time video 114 using TV processing 132 by inserting TV ratings,captions, and other information into real-time video 114.

As shown in FIG. 1, television network 130 includes TV stations playout133. Television network 130 may utilize TV stations playout 133 toplayout the video (such as real-time video 114) to television 150, wheretelevision 150 includes a home television of a user watching the video.For example, television network 130 may use TV stations playout 133 totransmit real-time video 114 to television 150 using transmission link170. In one implementation, transmission link 170 corresponds totelevision network 130 transmitting real-time video 114 to a televisionstation (not shown). In such an implementation, the television stationwould then transmit real-time video 114 to television 150. However, inanother implementation, transmission link 170 corresponds to televisionnetwork 130 directly transmitting real-time video 114 to television 150.

Television network 130 includes content recorder 134. Television network130 may utilize content recorder 134 to record everything that getsaired on television network 130, such as real-time video 114. Byrecording everything that gets aired on television network 130 usingcontent recorder 134, television network 130 is able to capture TVratings data, such as those inserted by Nielsen and Arbitron. Forexample, television network 130 may use content recorder 134 to captureC3 ratings (or eventually C7 ratings, which are ratings data collectedpost real-time viewing) using tag 115 a from video file 113 and tag 115b from real-time video 114.

As illustrated in FIG. 1, television network 130 includes VOD creation135. Television network 130 may utilize VOD creation 135 to transmitvideos to electronic device 155, where electronic device 155 includesany device capable of playing VOD content, such as, but not limited to,a television or set-top box. For example, television network 130 mayutilize VOD creation 135 to transmit real-time video 114 including tag115 b to electronic device 155 using transmission link 171. In such anexample, television network 130 may use VOD creation 135 to stream thereal-time video 114 including tag 115 b to electronic device 155 ifelectronic device 155 is a set-top box or a computer, where thestreaming of real-time video 114 corresponds to transmission link 171.Furthermore, television network 130 may use VOD creation 135 to allowelectronic device 155 to download real-time video 114 including tag 115b if electronic device is a computer, digital video recorder, orportable media player, where the downloading of real-time video 114corresponds to transmission link 171.

Television network 130 includes mobile content authoring 136. Televisionnetwork 130 may utilize mobile content authoring 136 to generate thepackaging that is needed for delivering video to mobile device 160,where mobile device 160 includes a mobile phone. When generating thepackaging for mobile device 160, mobile content authoring 136 wouldprocess the tags within the video to create a different carrying formatfor the tags for delivery to mobile device 160. For example, mobilecontent authoring 136 may processes real-time video 114 that includestag 115 b stored in the VANC space of real-time video 114 to generate avideo file for mobile device 160. In such an example, mobile contentauthoring 136 may take tag 115 b from the VANC space of real-time video114 and place tag 115 b in the header of the video file, at the end ofthe video file, or as a separate element that gets transmitted with thevideo file.

Also, television network 130 may utilize mobile content authoring 136 totransmit the video file including the tag to mobile device 160 usingtransmission link 172. For example, in one implementation, televisionnetwork 130 may utilize mobile content authoring 136 to transmit thevideo file to mobile device 160 using over-the-top services, where theover-the-top services correspond to transmission link 172. For anotherexample, in another implementation, television network 130 may utilizemobile content authoring 136 to transmit the video file to mobile device160 using content delivery networks, where in content delivery networkscorrespond to transmission link 172.

It should be noted that, in one implementation, television network 130may further utilize metadata authoring 137 to generate tags for videosthat are transmitted to mobile device 160 when the videos do not alreadyinclude tags generated by content creator 110. In such animplementation, mobile content authoring 136 would insert the tagsgenerated by metadata authoring 137 into the video files similarly tohow mobile content authoring 136 inserts tag 115 b the video filediscussed above.

FIG. 2 presents an example of a content creator storing tags in videofor carriage in real-time, according to one implementation of thepresent disclosure. System 200 of FIG. 2 includes content creator 210and television network 230. Content creator 210 includes processor 220,communication interface 221, and memory 222. Memory 222 includes tagauthoring 211, tag insertion 212, video file 213, and real-time video214. Tag authoring 211 includes tag 215 a and tag 215 b. Tag insertion212 includes tag 215 a and tag 215 b. Video file 213 includes tag 215 a.Real-time video 214 includes tag 215 b.

With regard to FIG. 2, it should be noted that content creator 210, tagauthoring 211, tag insertion 212, video file 213, real-time video 214,tag 215 a, tag 215 b, and television network 230 correspond respectivelyto content creator 110, tag authoring 111, tag insertion 112, video file113, real-time video 114, tag 115 a and tag 115 b from FIG. 1.

As illustrated in FIG. 2, content creator 210 includes processor 220 andmemory 222. Processor 220 may be configured to access memory 222 tostore received input or to execute commands, processes, or programsstored in memory 222, such as tag authoring 211 and tag insertion 212.Processor 220 may correspond to a processing device, such as amicroprocessor or similar hardware processing device, or a plurality ofhardware devices. Memory 222 is a sufficient memory capable of storingcommands, processes, and programs for execution by processor 220.

In the implementation of FIG. 2, content creator 210 utilizes tagauthoring 211 to generate tag 215 a for video file 213 and tag 215 b forreal-time video 214. After generating tag 215 a and tag 215 b, contentcreator 210 then utilizes tag insertion 212 to insert tag 215 a intovideo file 213 and tag 215 b into real-time video 214. For example, andas discussed above, tag insertion 212 may insert tag 215 a into theheader of video file 213, at the end of video file 213, or as a sidecarfile to video file 213. For another example, and also discussed above,since real-time video 214 includes a video or live feed, tag insertion212 may insert tag 215 b into the VANC space of real-time video 214.

Continuing with FIG. 2, after inserting tag 215 a into video file 213and tag 215 b into real-time video 214, content creator 210 transmitsvideo file 213 including tag 215 a and real-time video 214 including tag215 b to television network 230 using communication interface 221. Forexample, communication interface 221 may utilize an wired or wirelesstechnologies for transmitting video file 213 and real-time video 214 totelevision network 230.

FIG. 3 presents an example of a television network utilizing video thatincludes stored tags, according to one implementation of the presentdisclosure. System 300 of FIG. 3 includes television network 330,television 350, electronic device 355, and mobile device 360. Televisionnetwork 330 includes processor 340, communication interface 341, andmemory 342. Memory 343 tag insertion 331, TV processing 332, TV stationsplayout 333, content recorder 334, VOD creation 335, mobile contentauthoring 336, metadata authoring 337, and content repository 338.Content repository 338 includes video file 313 and real-time video 314.Video file 313 includes tag 315 a. Real-time video 314 includes tag 315b.

With regard to FIG. 3, it should be noted that video file 313, real-timevideo 314, tag 315 a, tag 315 b, television network 330, tag insertion331, TV processing 332, TV stations playout 333, content recorder 334,VOD creation 335, mobile content authoring 336, metadata authoring 337,television 350, electronic device 335, and mobile device 360 correspondrespectively to video file 113, real-time video 114, tag 115 a, tag 115b, television network 130, tag insertion 131, TV processing 132, TVstations playout 133, content recorder 134, VOD creation 135, mobilecontent authoring 136, metadata authoring 137, television 150,electronic device 155, and mobile device 160 from FIG. 1.

As illustrated in FIG. 3, television network 330 includes processor 340and memory 342. Processor 340 may be configured to access memory 342 tostore received input or to execute commands, processes, or programsstored in memory 342, such as tag insertion 331, television processing332, TV stations playout 333 content recorder 334, VOD creation 335,mobile content authoring 336, metadata authoring 337, and contentrepository 338. Processor 340 may correspond to a processing device,such as a microprocessor or similar hardware processing device, or aplurality of hardware devices. Memory 342 is a sufficient memory capableof storing commands, processes, and programs for execution by processor340.

As shown in FIG. 3, television network 330 includes content repository338. Television network 330 may utilize content repository 338 to storevideo content received from a content creator, such as video file 313and real-time video 314. For example, and using FIG. 1, televisionnetwork 130 may store video file 113 and real-time video 114 receivedfrom content creator 110 in content repository 338. Television network330 may then process that stored video content from content repository338 using the methods described above. Finally, television network 330may transmit the processed video using communication interface 341 totelevision 350, electronic device 355, and mobile device 360, wherecommunication interface 341 utilizes any wired or wireless technology.

FIG. 4 presents flowchart illustrating a method for a content creator tostore tags in video for carriage in real-time, according to oneimplementation of the present disclosure. The approach and techniqueindicated by flowchart 400 are sufficient to describe at least oneimplementation of the present disclosure, however, other implementationsof the disclosure may utilize approaches and techniques different fromthose shown in flowchart 400. Furthermore, while flowchart 400 isdescribed with respect to FIG. 2, the disclosed inventive concepts arenot intended to be limited by specific features shown and described withrespect to FIG. 2. Furthermore, with respect to the method illustratedin FIG. 4, it is noted that certain details and features have been leftout of flowchart 400 in order not to obscure the discussion of inventivefeatures in the present application.

Referring now to flowchart 400 of FIG. 4, flowchart 400 (at 410)includes retrieving a video from a memory for transmission to atelevision network. For example, processor 220 of content creator 210may retrieve video file 213 or real-time video 214 from memory 222 fortransmission to television network 230. As discussed above, video file213 may include any type of video data that is encoded and compressedinto a video format for transmission to television network 230.Real-time video 214 may include any type of video or live feed that istransmitted to and ready to be played out by television network 230.

Flowchart 400 (at 420) continues with generating a tag for the video,the tag including information about the video. For example, processor220 of content creator 210 may utilize tag authoring 211 to generate tag215 a for video file 213 or tag 215 b for real-time video 214, where tag215 a includes information about video file 213 and tag 215 b includesinformation about real-time video 214. As discussed above, tags 215 aand 215 b may each include ID3 tags, which include metadata containersthat provide information about the video content.

Flowchart 400 (at 430) continues with inserting the tag into the video.For example, processor 220 of content creator 210 may utilize taginsertion 212 to insert tag 215 a into video file 213 or tag 215 b intoreal-time video 214. As discussed above, tag insertion 212 may inserttag 215 a into the header of video file 213, at the end of video file213, or as a sidecar file to video file 213. Furthermore, tag insertion212 may insert tag 215 b into the VANC space of real-time video 214.

Flowchart 400 (at 440) continues with transmitting the video includingthe tag to the television network. For example, processor 220 of contentcreator 210 may transmit video file 213 including tag 215 a or real-timevideo 214 including tag 215 b to television network 230. As discussedabove, television network 230 may then broadcast video file 213including tag 215 a or real-time video 214 including tag 215 b to adisplay device, such as a television or mobile device of a user.

FIG. 5 shows a flowchart illustrating a method for a television networkto utilize video that includes stored tags, according to oneimplementation of the present disclosure. The approach and techniqueindicated by flowchart 500 are sufficient to describe at least oneimplementation of the present disclosure, however, other implementationsof the disclosure may utilize approaches and techniques different fromthose shown in flowchart 500. Furthermore, while flowchart 500 isdescribed with respect to FIG. 3, the disclosed inventive concepts arenot intended to be limited by specific features shown and described withrespect to FIG. 3. Furthermore, with respect to the method illustratedin FIG. 5, it is noted that certain details and features have been leftout of flowchart 500 in order not to obscure the discussion of inventivefeatures in the present application.

Referring now to flowchart 500 of FIG. 5, flowchart 500 (at 510)includes receiving a video including a tag from a content creator. Forexample, processor 340 of television network 330 may receive video file313 including tag 315 a or real-time video 314 including tag 315 b froma content creator, such as content creator 210 from FIG. 2. As discussedabove, tag 315 a may be inserted in the header of video file 313, at theend of video file 313, or as a sidecar file to video file 313.Furthermore, tag 315 b may be inserted in the VANC space of real-timevideo 314.

Flowchart 500 (at 520) continues with processing the video including thetag. For example, processor 340 of television network 330 may utilizetag insertion 331 to process video file 313 including tag 315 a orreal-time video 314 including tag 315 b. As discussed above, processingvideo file 313 including tag 315 a using tag insertion 331 may includeprocessing video file 313 into a video stream and inserting tag 315 ainto the VANC space of the video stream. Furthermore, processingreal-time video 314 including tag 315 b using tag insertion 331 maymerely include passing real-time video 314 including tag 315 b throughtag insertion 331 since real-time video 314 already includes tag 315 binserted in the VANC space of real-time video 314.

Flowchart 500 (at 530) continues with transmitting the video includingthe tag to a display device. For example, processor 340 of televisionnetwork 330 may transmit the processed video file 313 including tag 315a or the processed real-time video 314 including tag 315 b to a displaydevice. For example, television network 330 may transmit real-time video314 including tag 315 b to television 350.

From the above description it is manifest that various techniques can beused for implementing the concepts described in the present applicationwithout departing from the scope of those concepts. Moreover, while theconcepts have been described with specific reference to certainimplementations, a person of ordinary skill in the art would recognizethat changes can be made in form and detail without departing from thescope of those concepts. As such, the described implementations are tobe considered in all respects as illustrative and not restrictive. Itshould also be understood that the present application is not limited tothe particular implementations described above, but many rearrangements,modifications, and substitutions are possible without departing from thescope of the present disclosure.

What is claimed is:
 1. A content creator comprising: a memory; and aprocessor configured to: retrieve a video from the memory fortransmission to a television network; generate an ID3 tag for the video,the ID3 tag including information about the video; insert the ID3 taginto a vertical ancillary data (VANC) space of the video; and transmitthe video including the ID3 tag to the television network.
 2. Thecontent creator of claim 1, wherein the ID3 tag includes a metadatacontainer that includes the information about the video.
 3. The contentcreator of claim 1, wherein the information about the video includes atleast one of a name of the video, a genre of the video, and how thevideo was created.
 4. The content creator of claim 1, wherein the videoincludes a live feed.
 5. The content creator of claim 4, wherein thetelevision network transmits the live feed including the ID3 taginserted in the VANC space of the live feed to a display device.
 6. Thecontent creator of claim 1, wherein the television network processes thevideo including the ID3 tag to generate a video file that is formattedfor a mobile device.
 7. The content creator of claim 1, wherein thetelevision network uses the ID3 tag inserted in the VANC space of thevideo to collect ratings information.
 8. A television networkcomprising: a processor configured to: receive a video including an ID3tag from a content creator, wherein the ID3 tag is inserted in avertical ancillary data (VANC) space of the video; processes the videoincluding the ID3 tag for delivery to a display device; and transmit thevideo including the ID3 tag to the display device.
 9. The televisionnetwork of claim 8, wherein the ID3 tag includes a metadata containerthat includes information about the video.
 10. The television network ofclaim 9, wherein the information about the video includes at least oneof a name of the video, a genre of the video, and how the video wascreated.
 11. The television network of claim 8, wherein the videoincludes a live feed.
 12. The television network of claim 8, wherein thedisplay device includes a mobile device, and wherein to process thevideo including the ID3 tag the processor is configured to generate avideo file formatted for the mobile device using the video including theID3 tag.
 13. The television network of claim 8, wherein the processor isfurther configured to: collect ratings information using the ID3 taginserted in the VANC space of the video.
 14. A method for storing an ID3tag in a vertical ancillary data (VANC) space of a video, the methodcomprising: retrieving the video from a memory for transmission to atelevision network; generating the ID3 tag for the video, the ID3 tagincluding information about the video; inserting the ID3 tag into theVANC space of the video; and transmitting the video including the ID3tag to the television network.
 15. The method of claim 14, wherein theID3 tag includes a metadata container that includes the informationabout the video.
 16. The method of claim 14, wherein the informationabout the video includes at least one of a name of the video, a genre ofthe video, and how the video was created.
 17. The method of claim 14,wherein the video includes a live feed.
 18. The method of claim 17,wherein the television network transmits the live feed including the ID3tag inserted in the VANC space of the live feed to a display device. 19.The method of claim 14, wherein the television network processes thevideo including the ID3 tag to generate a video file that is formattedfor a mobile device.
 20. The method of claim 14, wherein the televisionnetwork uses the ID3 tag inserted in the VANC space of the video tocollect ratings information.